package entity;

import java.sql.Date;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.*;

@Entity
@Table(name="Paquetes")
public class Paquete {

	@Id
	private Integer codPaquete;
	
	private Float ancho;
	private Float alto;
	private Float profundidad;
	private Float volumen;
	private String fragilidad;
	private Integer apilable;
	private String tratamiento;
	private String tipoPaquete;
	
	@OneToMany(cascade=CascadeType.ALL)
	@JoinColumn(name="idCliente")
	private Set<Particular> receptores = new HashSet<Particular>();
	
	@OneToOne(cascade=CascadeType.ALL)
	@JoinColumn(name="idDir")
	private Direccion direccionDestino;
	
	@OneToOne(cascade=CascadeType.ALL)
	@JoinColumn(name="numeroSuc")
	private Sucursal SucDestino;
	
	private Date fechaMaximaLlegada;
	private String manifiesto;
	private String estadoDelPaquete;
	private Boolean autorizacionAvioneta;
	private Date fechaEstimadaEntrega;
	
	@OneToOne(cascade=CascadeType.ALL)
	@JoinColumn(name="numeroRemito")
	private RemitoAReceptor remitoReceptor;
	private String condicionesEspeciales;

	

	public Paquete() {
		// TODO Auto-generated constructor stub
	}



	public Integer getCodPaquete() {
		return codPaquete;
	}



	public void setCodPaquete(Integer codPaquete) {
		this.codPaquete = codPaquete;
	}



	public Float getAncho() {
		return ancho;
	}



	public void setAncho(Float ancho) {
		this.ancho = ancho;
	}



	public Float getAlto() {
		return alto;
	}



	public void setAlto(Float alto) {
		this.alto = alto;
	}



	public Float getProfundidad() {
		return profundidad;
	}



	public void setProfundidad(Float profundidad) {
		this.profundidad = profundidad;
	}



	public Float getVolumen() {
		return volumen;
	}



	public void setVolumen(Float volumen) {
		this.volumen = volumen;
	}



	public String getFragilidad() {
		return fragilidad;
	}



	public void setFragilidad(String fragilidad) {
		this.fragilidad = fragilidad;
	}



	public Integer getApilable() {
		return apilable;
	}



	public void setApilable(Integer apilable) {
		this.apilable = apilable;
	}



	public String getTratamiento() {
		return tratamiento;
	}



	public void setTratamiento(String tratamiento) {
		this.tratamiento = tratamiento;
	}



	public String getTipoPaquete() {
		return tipoPaquete;
	}



	public void setTipoPaquete(String tipoPaquete) {
		this.tipoPaquete = tipoPaquete;
	}

	


	public Set<Particular> getReceptores() {
		return receptores;
	}



	public void setReceptores(Set<Particular> receptores) {
		this.receptores = receptores;
	}



	public Direccion getDireccionDestino() {
		return direccionDestino;
	}



	public void setDireccionDestino(Direccion direccionDestino) {
		this.direccionDestino = direccionDestino;
	}



	public Sucursal getSucDestino() {
		return SucDestino;
	}



	public void setSucDestino(Sucursal sucDestino) {
		SucDestino = sucDestino;
	}



	public Date getFechaMaximaLlegada() {
		return fechaMaximaLlegada;
	}



	public void setFechaMaximaLlegada(Date fechaMaximaLlegada) {
		this.fechaMaximaLlegada = fechaMaximaLlegada;
	}



	public String getManifiesto() {
		return manifiesto;
	}



	public void setManifiesto(String manifiesto) {
		this.manifiesto = manifiesto;
	}



	public String getEstadoDelPaquete() {
		return estadoDelPaquete;
	}



	public void setEstadoDelPaquete(String estadoDelPaquete) {
		this.estadoDelPaquete = estadoDelPaquete;
	}



	public Boolean getAutorizacionAvioneta() {
		return autorizacionAvioneta;
	}



	public void setAutorizacionAvioneta(Boolean autorizacionAvioneta) {
		this.autorizacionAvioneta = autorizacionAvioneta;
	}



	public Date getFechaEstimadaEntrega() {
		return fechaEstimadaEntrega;
	}



	public void setFechaEstimadaEntrega(Date fechaEstimadaEntrega) {
		this.fechaEstimadaEntrega = fechaEstimadaEntrega;
	}



	public RemitoAReceptor getRemitoReceptor() {
		return remitoReceptor;
	}



	public void setRemitoReceptor(RemitoAReceptor remitoReceptor) {
		this.remitoReceptor = remitoReceptor;
	}



	public String getCondicionesEspeciales() {
		return condicionesEspeciales;
	}



	public void setCondicionesEspeciales(String condicionesEspeciales) {
		this.condicionesEspeciales = condicionesEspeciales;
	}	
	

}
